/**
 * Copyright 2011 Joao Miguel Pereira
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package eu.jpereira.trainings.designpatterns.creational.factorymethod;

/**
 * The Report Generator will create reports based on a given type
 * 
 * @author jpereira
 *
 */
public class ReportGenerator {

	/**
	 * Generate a new report.
	 * 
	 * @param data
	 *            The report data
	 * @param type
	 *            the type of report
	 * @return the generated report, or null of type is unknown
	 */
	/*
	 * public Report generateReport(ReportData data, String type) {
	 * 
	 * Report generatedReport = null;
	 * 
	 * if (type.equals("JSON")) { generatedReport = new JSONReport(); } else if
	 * (type.equals("XML")) { generatedReport = new XMLReport(); } else if
	 * (type.equals("HTML")) { generatedReport = new HTMLReport(); } else if
	 * (type.equals("PDF")) { generatedReport = new PDFReport(); } if
	 * (generatedReport != null) { generatedReport.generateReport(data); }
	 * 
	 * return generatedReport; }
	 */

	public Report generateReport(Report r, ReportData d) {

		r.generateReport(d);
		return r;
	}
}
